package com.sangcomz.fishbun.datasource;

import com.sangcomz.fishbun.MimeType;
import com.sangcomz.fishbun.adapter.image.ImageAdapter;
import com.sangcomz.fishbun.ui.album.model.AlbumMenuViewData;
import com.sangcomz.fishbun.ui.album.model.AlbumViewData;
import com.sangcomz.fishbun.ui.detail.model.DetailImageViewData;
import com.sangcomz.fishbun.ui.picker.model.PickerMenuViewData;
import com.sangcomz.fishbun.ui.picker.model.PickerViewData;
import ohos.utils.net.Uri;

import java.util.List;

public interface FishBunDataSource {
    List<Uri> getSelectedImageList();

    void selectImage(Uri imageUri);

    void unselectImage(Uri imageUri);

    List<Uri> getPickerImages();

    int getMaxCount();

    int getMinCount();

    boolean getIsAutomaticClose();

    String getMessageLimitReached();

    String getMessageNothingSelected();

    List<MimeType> getExceptMimeTypeList();

    List<String> getSpecifyFolderList();

    String getAllViewTitle();

    DetailImageViewData getDetailViewData();

    AlbumViewData getAlbumViewData();

    ImageAdapter getImageAdapter();

    AlbumMenuViewData gatAlbumMenuViewData();

    PickerViewData getPickerViewData();

    void setCurrentPickerImageList(List<Uri> pickerImageList);

    boolean hasCameraInPickerPage();

    boolean useDetailView();

    PickerMenuViewData getPickerMenuViewData();

    boolean isStartInAllView();
}